HAL I2S types ¶
HAL I2S types ¶
- group I2S_Exported_Types
-
Typedefs
-
typedef
struct
hal_i2s_handle_s
hal_i2s_handle_t
¶
-
HAL I2S handler type
-
typedef
void
(
*
hal_i2s_cb_t
)
(
hal_i2s_handle_t
*
hi2s
)
¶
-
HAL I2S Generic I2S callback Type HAL I2S pointer
Enums
-
enum
hal_i2s_t
¶
-
HAL I2S instances enumeration definition.
Values:
-
enumerator
HAL_I2S1
¶
-
I2S1 instance
-
enumerator
HAL_I2S2
¶
-
I2S2 instance
-
enumerator
HAL_I2S3
¶
-
I2S3 instance
-
enumerator
HAL_I2S1
¶
-
enum
hal_i2s_mode_t
¶
-
HAL I2S mode enumeration definition.
Values:
-
enumerator
HAL_I2S_MODE_SLAVE_TX
¶
-
Slave transmit mode Slave transmit mode
-
enumerator
HAL_I2S_MODE_SLAVE_RX
¶
-
Slave receive mode Slave receive mode
-
enumerator
HAL_I2S_MODE_MASTER_TX
¶
-
Master transmit mode Master transmit mode
-
enumerator
HAL_I2S_MODE_MASTER_RX
¶
-
Master receive mode Master receive mode
-
enumerator
HAL_I2S_MODE_SLAVE_FULL_DUPLEX
¶
-
Slave full duplex mode Slave full duplex mode
-
enumerator
HAL_I2S_MODE_MASTER_FULL_DUPLEX
¶
-
Master full duplex mode Master full duplex mode
-
enumerator
HAL_I2S_MODE_SLAVE_TX
¶
-
enum
hal_i2s_standard_t
¶
-
HAL I2S standard.
Values:
-
enumerator
HAL_I2S_STANDARD_PHILIPS
¶
-
PHILIPS standard PHILIPS standard
-
enumerator
HAL_I2S_STANDARD_MSB
¶
-
MSB-justified standard MSB-justified standard
-
enumerator
HAL_I2S_STANDARD_LSB
¶
-
LSB-justified standard LSB-justified standard
-
enumerator
HAL_I2S_STANDARD_PCM_SHORT
¶
-
PCM standard with short frame synchronization PCM standard with short frame synchronization
-
enumerator
HAL_I2S_STANDARD_PCM_LONG
¶
-
PCM standard with long frame synchronization PCM standard with long frame synchronization
-
enumerator
HAL_I2S_STANDARD_PHILIPS
¶
-
enum
hal_i2s_data_format_t
¶
-
HAL I2S data format.
Values:
-
enumerator
HAL_I2S_DATA_FORMAT_16_BIT
¶
-
16-bit on 16-bit channel 16-bit on 16-bit channel
-
enumerator
HAL_I2S_DATA_FORMAT_16_BIT_EXTENDED
¶
-
16-bit on 32-bit channel 16-bit on 32-bit channel
-
enumerator
HAL_I2S_DATA_FORMAT_24_BIT
¶
-
24-bit on 32-bit channel right aligned 24-bit on 32-bit channel
-
enumerator
HAL_I2S_DATA_FORMAT_32_BIT
¶
-
32-bit on 32-bit channel 32-bit on 32-bit channel
-
enumerator
HAL_I2S_DATA_FORMAT_16_BIT
¶
-
enum
hal_i2s_master_audio_frequency_t
¶
-
HAL I2S audio frequency enumeration definition.
Values:
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_192_KHZ
¶
-
Audio Frequency configuration 192000 Hz Frequency 192kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_96_KHZ
¶
-
Audio Frequency configuration 96000 Hz Frequency 96kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_48_KHZ
¶
-
Audio Frequency configuration 48000 Hz Frequency 48kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_44_KHZ
¶
-
Audio Frequency configuration 44100 Hz Frequency 44kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_32_KHZ
¶
-
Audio Frequency configuration 32000 Hz Frequency 32kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_22_KHZ
¶
-
Audio Frequency configuration 22050 Hz Frequency 22kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_16_KHZ
¶
-
Audio Frequency configuration 16000 Hz Frequency 16kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_11_KHZ
¶
-
Audio Frequency configuration 11025 Hz Frequency 11kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_8_KHZ
¶
-
Audio Frequency configuration 8000 Hz Frequency 8kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_192_KHZ
¶
-
enum
hal_i2s_clock_polarity_t
¶
-
HAL I2S clock polarity enumeration definition.
Values:
-
enumerator
HAL_I2S_CLOCK_POLARITY_LOW
¶
-
SCK signal is at 0 when idle SCK signal is at 0 when idle
-
enumerator
HAL_I2S_CLOCK_POLARITY_HIGH
¶
-
SCK signal is at 1 when idle SCK signal is at 1 when idle
-
enumerator
HAL_I2S_CLOCK_POLARITY_LOW
¶
-
enum
hal_i2s_bit_order_t
¶
-
HAL I2S MSB/LSB transmission enumeration definition.
Values:
-
enumerator
HAL_I2S_MSB_FIRST
¶
-
MSB transmitted first MSB transmitted first
-
enumerator
HAL_I2S_LSB_FIRST
¶
-
LSB transmitted first LSB transmitted first
-
enumerator
HAL_I2S_MSB_FIRST
¶
-
enum
hal_i2s_fifo_threshold_t
¶
-
HAL I2S FIFO threshold level enumeration definition.
Values:
-
enumerator
HAL_I2S_FIFO_THRESHOLD_1_DATA
¶
-
1-data Threshold level set to 1 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_2_DATA
¶
-
2-data Threshold level set to 2 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_3_DATA
¶
-
3-data Threshold level set to 3 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_4_DATA
¶
-
4-data Threshold level set to 4 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_5_DATA
¶
-
5-data Threshold level set to 5 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_6_DATA
¶
-
6-data Threshold level set to 6 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_7_DATA
¶
-
7-data Threshold level set to 7 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_8_DATA
¶
-
8-data Threshold level set to 8 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_1_DATA
¶
-
enum
hal_i2s_state_t
¶
-
HAL I2S state structure definition.
Values:
-
enumerator
HAL_I2S_STATE_RESET
¶
-
I2S is not yet initialized or de-initialized
-
enumerator
HAL_I2S_STATE_INIT
¶
-
I2S is initialized but not yet configured
-
enumerator
HAL_I2S_STATE_IDLE
¶
-
I2S is initialized and global config applied
-
enumerator
HAL_I2S_STATE_TX_ACTIVE
¶
-
Data Transmission process is ongoing
-
enumerator
HAL_I2S_STATE_RX_ACTIVE
¶
-
Data Reception process is ongoing
-
enumerator
HAL_I2S_STATE_TX_RX_ACTIVE
¶
-
Data Transmission and Reception process is ongoing
-
enumerator
HAL_I2S_STATE_PAUSED
¶
-
Data process is paused
-
enumerator
HAL_I2S_STATE_ABORT
¶
-
I2S abort is ongoing
-
enumerator
HAL_I2S_STATE_RESET
¶
-
enum
hal_i2s_master_clk_output_status_t
¶
-
HAL I2S MCLK enumeration definition.
Values:
-
enumerator
HAL_I2S_MASTER_CLK_OUTPUT_DISABLED
¶
-
Master clock output disabled
-
enumerator
HAL_I2S_MASTER_CLK_OUTPUT_ENABLED
¶
-
Master clock output enabled
-
enumerator
HAL_I2S_MASTER_CLK_OUTPUT_DISABLED
¶
-
enum
hal_i2s_ws_inversion_status_t
¶
-
HAL I2S word select inversion enumeration definition.
Values:
-
enumerator
HAL_I2S_WS_INVERSION_DISABLED
¶
-
Word select inversion disabled
-
enumerator
HAL_I2S_WS_INVERSION_ENABLED
¶
-
Word select inversion enabled
-
enumerator
HAL_I2S_WS_INVERSION_DISABLED
¶
-
enum
hal_i2s_master_keep_io_state_status_t
¶
-
HAL I2S master keep IO state enumeration definition.
Values:
-
enumerator
HAL_I2S_MASTER_KEEP_IO_STATE_DISABLED
¶
-
Master keep IO state disabled
-
enumerator
HAL_I2S_MASTER_KEEP_IO_STATE_ENABLED
¶
-
Master keep IO state enabled
-
enumerator
HAL_I2S_MASTER_KEEP_IO_STATE_DISABLED
¶
-
enum
hal_i2s_io_swap_status_t
¶
-
HAL I2S swap IO state enumeration definition.
Values:
-
enumerator
HAL_I2S_IO_SWAP_DISABLED
¶
-
IO swap feature disabled
-
enumerator
HAL_I2S_IO_SWAP_ENABLED
¶
-
IO swap feature enabled
-
enumerator
HAL_I2S_IO_SWAP_DISABLED
¶
-
enum
hal_i2s_slave_length_detection_error_status_t
¶
-
HAL I2S slave channel length state enumeration definition.
Values:
-
enumerator
HAL_I2S_SLAVE_LEN_DETECT_ERR_DISABLED
¶
-
Slave channel length detection error disabled
-
enumerator
HAL_I2S_SLAVE_LEN_DETECT_ERR_ENABLED
¶
-
Slave channel length detection error enabled
-
enumerator
HAL_I2S_SLAVE_LEN_DETECT_ERR_DISABLED
¶
-
struct
hal_i2s_master_config_t
¶
-
#include <stm32c5xx_hal_i2s.h>
HAL I2S Master configuration structure definition.
Public Members
-
hal_i2s_mode_t
mode
¶
-
The I2S operating mode.
-
hal_i2s_standard_t
standard
¶
-
The I2S standard.
-
hal_i2s_data_format_t
data_format
¶
-
The I2S data format.
-
hal_i2s_clock_polarity_t
clock_polarity
¶
-
The serial steady state.
-
hal_i2s_bit_order_t
bit_order
¶
-
Specifies whether data transfers start from MSB or LSB bit.
-
hal_i2s_master_audio_frequency_t
audio_frequency
¶
-
The audio frequency selected, configurable in Master mode.
-
hal_i2s_mode_t
mode
¶
-
struct
hal_i2s_slave_config_t
¶
-
#include <stm32c5xx_hal_i2s.h>
HAL I2S Slave configuration structure definition.
Public Members
-
hal_i2s_mode_t
mode
¶
-
The I2S operating mode.
-
hal_i2s_standard_t
standard
¶
-
The I2S standard.
-
hal_i2s_data_format_t
data_format
¶
-
The I2S data format.
-
hal_i2s_clock_polarity_t
clock_polarity
¶
-
The serial steady state.
-
hal_i2s_bit_order_t
bit_order
¶
-
Specifies whether data transfers start from MSB or LSB bit.
-
hal_i2s_mode_t
mode
¶
-
struct
hal_i2s_handle_s
¶
-
#include <stm32c5xx_hal_i2s.h>
I2S handle structure definition.
Public Members
-
volatile
hal_i2s_state_t
global_state
¶
-
I2S state
-
volatile
hal_i2s_state_t
pause_state
¶
-
I2S pause state
-
volatile
uint32_t
last_error_codes
¶
-
I2S Error code
-
hal_os_semaphore_t
semaphore
¶
-
I2S OS semaphore
-
const
uint16_t
*
p_tx_buff
¶
-
Pointer to I2S Tx transfer buffer
-
uint16_t
tx_xfer_size
¶
-
I2S Tx transfer size
-
volatile
uint16_t
tx_xfer_count
¶
-
I2S Tx transfer counter
-
uint16_t
*
p_rx_buff
¶
-
Pointer to I2S Rx transfer buffer
-
uint16_t
rx_xfer_size
¶
-
I2S Rx transfer size
-
volatile
uint16_t
rx_xfer_count
¶
-
I2S Rx transfer counter
-
void
(
*
p_rx_isr
)
(
struct
hal_i2s_handle_s
*
hi2s
)
¶
-
Function pointer on Rx ISR
-
void
(
*
p_tx_isr
)
(
struct
hal_i2s_handle_s
*
hi2s
)
¶
-
Function pointer on Tx ISR
-
hal_dma_handle_t
*
hdma_tx
¶
-
I2S Tx DMA handle parameters
-
hal_dma_handle_t
*
hdma_rx
¶
-
I2S Rx DMA handle parameters
-
const
void
*
p_user_data
¶
-
User data pointer
-
void
(
*
p_tx_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
¶
-
I2S Tx complete callback
-
void
(
*
p_rx_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
¶
-
I2S Rx complete callback
-
void
(
*
p_tx_rx_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
¶
-
I2S TxRx complete callback
-
void
(
*
p_tx_half_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
¶
-
I2S Tx half complete callback
-
void
(
*
p_rx_half_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
¶
-
I2S Rx half complete callback
-
void
(
*
p_tx_rx_half_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
¶
-
I2S TxRx half complete callback
-
void
(
*
p_error_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
¶
-
I2S error callback
-
void
(
*
p_abort_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
¶
-
I2S abort callback
-
volatile
hal_i2s_state_t
global_state
¶
-
typedef
struct
hal_i2s_handle_s
hal_i2s_handle_t
¶
- group I2S_Exported_Types
-
Typedefs
-
typedef
struct
hal_i2s_handle_s
hal_i2s_handle_t
-
HAL I2S handler type
-
typedef
void
(
*
hal_i2s_cb_t
)
(
hal_i2s_handle_t
*
hi2s
)
-
HAL I2S Generic I2S callback Type HAL I2S pointer
Enums
-
enum
hal_i2s_t
-
HAL I2S instances enumeration definition.
Values:
-
enumerator
HAL_I2S1
-
I2S1 instance
-
enumerator
HAL_I2S2
-
I2S2 instance
-
enumerator
HAL_I2S3
-
I2S3 instance
-
enumerator
HAL_I2S1
-
enum
hal_i2s_mode_t
-
HAL I2S mode enumeration definition.
Values:
-
enumerator
HAL_I2S_MODE_SLAVE_TX
-
Slave transmit mode Slave transmit mode
-
enumerator
HAL_I2S_MODE_SLAVE_RX
-
Slave receive mode Slave receive mode
-
enumerator
HAL_I2S_MODE_MASTER_TX
-
Master transmit mode Master transmit mode
-
enumerator
HAL_I2S_MODE_MASTER_RX
-
Master receive mode Master receive mode
-
enumerator
HAL_I2S_MODE_SLAVE_FULL_DUPLEX
-
Slave full duplex mode Slave full duplex mode
-
enumerator
HAL_I2S_MODE_MASTER_FULL_DUPLEX
-
Master full duplex mode Master full duplex mode
-
enumerator
HAL_I2S_MODE_SLAVE_TX
-
enum
hal_i2s_standard_t
-
HAL I2S standard.
Values:
-
enumerator
HAL_I2S_STANDARD_PHILIPS
-
PHILIPS standard PHILIPS standard
-
enumerator
HAL_I2S_STANDARD_MSB
-
MSB-justified standard MSB-justified standard
-
enumerator
HAL_I2S_STANDARD_LSB
-
LSB-justified standard LSB-justified standard
-
enumerator
HAL_I2S_STANDARD_PCM_SHORT
-
PCM standard with short frame synchronization PCM standard with short frame synchronization
-
enumerator
HAL_I2S_STANDARD_PCM_LONG
-
PCM standard with long frame synchronization PCM standard with long frame synchronization
-
enumerator
HAL_I2S_STANDARD_PHILIPS
-
enum
hal_i2s_data_format_t
-
HAL I2S data format.
Values:
-
enumerator
HAL_I2S_DATA_FORMAT_16_BIT
-
16-bit on 16-bit channel 16-bit on 16-bit channel
-
enumerator
HAL_I2S_DATA_FORMAT_16_BIT_EXTENDED
-
16-bit on 32-bit channel 16-bit on 32-bit channel
-
enumerator
HAL_I2S_DATA_FORMAT_24_BIT
-
24-bit on 32-bit channel right aligned 24-bit on 32-bit channel
-
enumerator
HAL_I2S_DATA_FORMAT_32_BIT
-
32-bit on 32-bit channel 32-bit on 32-bit channel
-
enumerator
HAL_I2S_DATA_FORMAT_16_BIT
-
enum
hal_i2s_master_audio_frequency_t
-
HAL I2S audio frequency enumeration definition.
Values:
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_192_KHZ
-
Audio Frequency configuration 192000 Hz Frequency 192kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_96_KHZ
-
Audio Frequency configuration 96000 Hz Frequency 96kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_48_KHZ
-
Audio Frequency configuration 48000 Hz Frequency 48kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_44_KHZ
-
Audio Frequency configuration 44100 Hz Frequency 44kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_32_KHZ
-
Audio Frequency configuration 32000 Hz Frequency 32kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_22_KHZ
-
Audio Frequency configuration 22050 Hz Frequency 22kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_16_KHZ
-
Audio Frequency configuration 16000 Hz Frequency 16kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_11_KHZ
-
Audio Frequency configuration 11025 Hz Frequency 11kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_8_KHZ
-
Audio Frequency configuration 8000 Hz Frequency 8kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_192_KHZ
-
enum
hal_i2s_clock_polarity_t
-
HAL I2S clock polarity enumeration definition.
Values:
-
enumerator
HAL_I2S_CLOCK_POLARITY_LOW
-
SCK signal is at 0 when idle SCK signal is at 0 when idle
-
enumerator
HAL_I2S_CLOCK_POLARITY_HIGH
-
SCK signal is at 1 when idle SCK signal is at 1 when idle
-
enumerator
HAL_I2S_CLOCK_POLARITY_LOW
-
enum
hal_i2s_bit_order_t
-
HAL I2S MSB/LSB transmission enumeration definition.
Values:
-
enumerator
HAL_I2S_MSB_FIRST
-
MSB transmitted first MSB transmitted first
-
enumerator
HAL_I2S_LSB_FIRST
-
LSB transmitted first LSB transmitted first
-
enumerator
HAL_I2S_MSB_FIRST
-
enum
hal_i2s_fifo_threshold_t
-
HAL I2S FIFO threshold level enumeration definition.
Values:
-
enumerator
HAL_I2S_FIFO_THRESHOLD_1_DATA
-
1-data Threshold level set to 1 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_2_DATA
-
2-data Threshold level set to 2 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_3_DATA
-
3-data Threshold level set to 3 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_4_DATA
-
4-data Threshold level set to 4 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_5_DATA
-
5-data Threshold level set to 5 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_6_DATA
-
6-data Threshold level set to 6 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_7_DATA
-
7-data Threshold level set to 7 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_8_DATA
-
8-data Threshold level set to 8 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_1_DATA
-
enum
hal_i2s_state_t
-
HAL I2S state structure definition.
Values:
-
enumerator
HAL_I2S_STATE_RESET
-
I2S is not yet initialized or de-initialized
-
enumerator
HAL_I2S_STATE_INIT
-
I2S is initialized but not yet configured
-
enumerator
HAL_I2S_STATE_IDLE
-
I2S is initialized and global config applied
-
enumerator
HAL_I2S_STATE_TX_ACTIVE
-
Data Transmission process is ongoing
-
enumerator
HAL_I2S_STATE_RX_ACTIVE
-
Data Reception process is ongoing
-
enumerator
HAL_I2S_STATE_TX_RX_ACTIVE
-
Data Transmission and Reception process is ongoing
-
enumerator
HAL_I2S_STATE_PAUSED
-
Data process is paused
-
enumerator
HAL_I2S_STATE_ABORT
-
I2S abort is ongoing
-
enumerator
HAL_I2S_STATE_RESET
-
enum
hal_i2s_master_clk_output_status_t
-
HAL I2S MCLK enumeration definition.
Values:
-
enumerator
HAL_I2S_MASTER_CLK_OUTPUT_DISABLED
-
Master clock output disabled
-
enumerator
HAL_I2S_MASTER_CLK_OUTPUT_ENABLED
-
Master clock output enabled
-
enumerator
HAL_I2S_MASTER_CLK_OUTPUT_DISABLED
-
enum
hal_i2s_ws_inversion_status_t
-
HAL I2S word select inversion enumeration definition.
Values:
-
enumerator
HAL_I2S_WS_INVERSION_DISABLED
-
Word select inversion disabled
-
enumerator
HAL_I2S_WS_INVERSION_ENABLED
-
Word select inversion enabled
-
enumerator
HAL_I2S_WS_INVERSION_DISABLED
-
enum
hal_i2s_master_keep_io_state_status_t
-
HAL I2S master keep IO state enumeration definition.
Values:
-
enumerator
HAL_I2S_MASTER_KEEP_IO_STATE_DISABLED
-
Master keep IO state disabled
-
enumerator
HAL_I2S_MASTER_KEEP_IO_STATE_ENABLED
-
Master keep IO state enabled
-
enumerator
HAL_I2S_MASTER_KEEP_IO_STATE_DISABLED
-
enum
hal_i2s_io_swap_status_t
-
HAL I2S swap IO state enumeration definition.
Values:
-
enumerator
HAL_I2S_IO_SWAP_DISABLED
-
IO swap feature disabled
-
enumerator
HAL_I2S_IO_SWAP_ENABLED
-
IO swap feature enabled
-
enumerator
HAL_I2S_IO_SWAP_DISABLED
-
enum
hal_i2s_slave_length_detection_error_status_t
-
HAL I2S slave channel length state enumeration definition.
Values:
-
enumerator
HAL_I2S_SLAVE_LEN_DETECT_ERR_DISABLED
-
Slave channel length detection error disabled
-
enumerator
HAL_I2S_SLAVE_LEN_DETECT_ERR_ENABLED
-
Slave channel length detection error enabled
-
enumerator
HAL_I2S_SLAVE_LEN_DETECT_ERR_DISABLED
-
enum
hal_i2s_io_cfg_status_t
-
HAL I2S IO configuration feature status enumeration definition.
Values:
-
enumerator
HAL_I2S_IO_CFG_UNLOCKED
-
IO configuration feature unlocked
-
enumerator
HAL_I2S_IO_CFG_LOCKED
-
IO configuration feature locked
-
enumerator
HAL_I2S_IO_CFG_UNLOCKED
-
struct
hal_i2s_master_config_t
-
#include <stm32c5xx_hal_i2s.h>
HAL I2S Master configuration structure definition.
Public Members
-
hal_i2s_mode_t
mode
-
The I2S operating mode.
-
hal_i2s_standard_t
standard
-
The I2S standard.
-
hal_i2s_data_format_t
data_format
-
The I2S data format.
-
hal_i2s_clock_polarity_t
clock_polarity
-
The serial steady state.
-
hal_i2s_bit_order_t
bit_order
-
Specifies whether data transfers start from MSB or LSB bit.
-
hal_i2s_master_audio_frequency_t
audio_frequency
-
The audio frequency selected, configurable in Master mode.
-
hal_i2s_mode_t
mode
-
struct
hal_i2s_slave_config_t
-
#include <stm32c5xx_hal_i2s.h>
HAL I2S Slave configuration structure definition.
Public Members
-
hal_i2s_mode_t
mode
-
The I2S operating mode.
-
hal_i2s_standard_t
standard
-
The I2S standard.
-
hal_i2s_data_format_t
data_format
-
The I2S data format.
-
hal_i2s_clock_polarity_t
clock_polarity
-
The serial steady state.
-
hal_i2s_bit_order_t
bit_order
-
Specifies whether data transfers start from MSB or LSB bit.
-
hal_i2s_mode_t
mode
-
struct
hal_i2s_handle_s
-
#include <stm32c5xx_hal_i2s.h>
I2S handle structure definition.
Public Members
-
hal_i2s_t
instance
-
I2S instance
-
volatile
hal_i2s_state_t
global_state
-
I2S state
-
volatile
hal_i2s_state_t
pause_state
-
I2S pause state
-
volatile
uint32_t
last_error_codes
-
I2S Error code
-
hal_os_semaphore_t
semaphore
-
I2S OS semaphore
-
const
uint16_t
*
p_tx_buff
-
Pointer to I2S Tx transfer buffer
-
uint16_t
tx_xfer_size
-
I2S Tx transfer size
-
volatile
uint16_t
tx_xfer_count
-
I2S Tx transfer counter
-
uint16_t
*
p_rx_buff
-
Pointer to I2S Rx transfer buffer
-
uint16_t
rx_xfer_size
-
I2S Rx transfer size
-
volatile
uint16_t
rx_xfer_count
-
I2S Rx transfer counter
-
void
(
*
p_rx_isr
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
Function pointer on Rx ISR
-
void
(
*
p_tx_isr
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
Function pointer on Tx ISR
-
hal_dma_handle_t
*
hdma_tx
-
I2S Tx DMA handle parameters
-
hal_dma_handle_t
*
hdma_rx
-
I2S Rx DMA handle parameters
-
const
void
*
p_user_data
-
User data pointer
-
void
(
*
p_tx_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S Tx complete callback
-
void
(
*
p_rx_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S Rx complete callback
-
void
(
*
p_tx_rx_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S TxRx complete callback
-
void
(
*
p_tx_half_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S Tx half complete callback
-
void
(
*
p_rx_half_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S Rx half complete callback
-
void
(
*
p_tx_rx_half_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S TxRx half complete callback
-
void
(
*
p_error_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S error callback
-
void
(
*
p_abort_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S abort callback
-
hal_i2s_t
instance
-
typedef
struct
hal_i2s_handle_s
hal_i2s_handle_t
- group I2S_Exported_Types
-
Typedefs
-
typedef
struct
hal_i2s_handle_s
hal_i2s_handle_t
-
HAL I2S handler type
-
typedef
void
(
*
hal_i2s_cb_t
)
(
hal_i2s_handle_t
*
hi2s
)
-
HAL I2S Generic I2S callback Type HAL I2S pointer
Enums
-
enum
hal_i2s_t
-
HAL I2S instances enumeration definition.
Values:
-
enumerator
HAL_I2S1
-
I2S1 instance
-
enumerator
HAL_I2S2
-
I2S2 instance
-
enumerator
HAL_I2S1
-
enum
hal_i2s_mode_t
-
HAL I2S mode enumeration definition.
Values:
-
enumerator
HAL_I2S_MODE_SLAVE_TX
-
Slave transmit mode Slave transmit mode
-
enumerator
HAL_I2S_MODE_SLAVE_RX
-
Slave receive mode Slave receive mode
-
enumerator
HAL_I2S_MODE_MASTER_TX
-
Master transmit mode Master transmit mode
-
enumerator
HAL_I2S_MODE_MASTER_RX
-
Master receive mode Master receive mode
-
enumerator
HAL_I2S_MODE_SLAVE_FULL_DUPLEX
-
Slave full duplex mode Slave full duplex mode
-
enumerator
HAL_I2S_MODE_MASTER_FULL_DUPLEX
-
Master full duplex mode Master full duplex mode
-
enumerator
HAL_I2S_MODE_SLAVE_TX
-
enum
hal_i2s_standard_t
-
HAL I2S standard.
Values:
-
enumerator
HAL_I2S_STANDARD_PHILIPS
-
PHILIPS standard PHILIPS standard
-
enumerator
HAL_I2S_STANDARD_MSB
-
MSB-justified standard MSB-justified standard
-
enumerator
HAL_I2S_STANDARD_LSB
-
LSB-justified standard LSB-justified standard
-
enumerator
HAL_I2S_STANDARD_PCM_SHORT
-
PCM standard with short frame synchronization PCM standard with short frame synchronization
-
enumerator
HAL_I2S_STANDARD_PCM_LONG
-
PCM standard with long frame synchronization PCM standard with long frame synchronization
-
enumerator
HAL_I2S_STANDARD_PHILIPS
-
enum
hal_i2s_data_format_t
-
HAL I2S data format.
Values:
-
enumerator
HAL_I2S_DATA_FORMAT_16_BIT
-
16-bit on 16-bit channel 16-bit on 16-bit channel
-
enumerator
HAL_I2S_DATA_FORMAT_16_BIT_EXTENDED
-
16-bit on 32-bit channel 16-bit on 32-bit channel
-
enumerator
HAL_I2S_DATA_FORMAT_24_BIT
-
24-bit on 32-bit channel right aligned 24-bit on 32-bit channel
-
enumerator
HAL_I2S_DATA_FORMAT_32_BIT
-
32-bit on 32-bit channel 32-bit on 32-bit channel
-
enumerator
HAL_I2S_DATA_FORMAT_16_BIT
-
enum
hal_i2s_master_audio_frequency_t
-
HAL I2S audio frequency enumeration definition.
Values:
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_192_KHZ
-
Audio Frequency configuration 192000 Hz Frequency 192kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_96_KHZ
-
Audio Frequency configuration 96000 Hz Frequency 96kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_48_KHZ
-
Audio Frequency configuration 48000 Hz Frequency 48kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_44_KHZ
-
Audio Frequency configuration 44100 Hz Frequency 44kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_32_KHZ
-
Audio Frequency configuration 32000 Hz Frequency 32kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_22_KHZ
-
Audio Frequency configuration 22050 Hz Frequency 22kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_16_KHZ
-
Audio Frequency configuration 16000 Hz Frequency 16kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_11_KHZ
-
Audio Frequency configuration 11025 Hz Frequency 11kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_8_KHZ
-
Audio Frequency configuration 8000 Hz Frequency 8kHz
-
enumerator
HAL_I2S_MASTER_AUDIO_FREQ_192_KHZ
-
enum
hal_i2s_clock_polarity_t
-
HAL I2S clock polarity enumeration definition.
Values:
-
enumerator
HAL_I2S_CLOCK_POLARITY_LOW
-
SCK signal is at 0 when idle SCK signal is at 0 when idle
-
enumerator
HAL_I2S_CLOCK_POLARITY_HIGH
-
SCK signal is at 1 when idle SCK signal is at 1 when idle
-
enumerator
HAL_I2S_CLOCK_POLARITY_LOW
-
enum
hal_i2s_bit_order_t
-
HAL I2S MSB/LSB transmission enumeration definition.
Values:
-
enumerator
HAL_I2S_MSB_FIRST
-
MSB transmitted first MSB transmitted first
-
enumerator
HAL_I2S_LSB_FIRST
-
LSB transmitted first LSB transmitted first
-
enumerator
HAL_I2S_MSB_FIRST
-
enum
hal_i2s_fifo_threshold_t
-
HAL I2S FIFO threshold level enumeration definition.
Values:
-
enumerator
HAL_I2S_FIFO_THRESHOLD_1_DATA
-
1-data Threshold level set to 1 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_2_DATA
-
2-data Threshold level set to 2 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_3_DATA
-
3-data Threshold level set to 3 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_4_DATA
-
4-data Threshold level set to 4 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_5_DATA
-
5-data Threshold level set to 5 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_6_DATA
-
6-data Threshold level set to 6 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_7_DATA
-
7-data Threshold level set to 7 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_8_DATA
-
8-data Threshold level set to 8 data sample
-
enumerator
HAL_I2S_FIFO_THRESHOLD_1_DATA
-
enum
hal_i2s_state_t
-
HAL I2S state structure definition.
Values:
-
enumerator
HAL_I2S_STATE_RESET
-
I2S is not yet initialized or de-initialized
-
enumerator
HAL_I2S_STATE_INIT
-
I2S is initialized but not yet configured
-
enumerator
HAL_I2S_STATE_IDLE
-
I2S is initialized and global config applied
-
enumerator
HAL_I2S_STATE_TX_ACTIVE
-
Data Transmission process is ongoing
-
enumerator
HAL_I2S_STATE_RX_ACTIVE
-
Data Reception process is ongoing
-
enumerator
HAL_I2S_STATE_TX_RX_ACTIVE
-
Data Transmission and Reception process is ongoing
-
enumerator
HAL_I2S_STATE_PAUSED
-
Data process is paused
-
enumerator
HAL_I2S_STATE_ABORT
-
I2S abort is ongoing
-
enumerator
HAL_I2S_STATE_RESET
-
enum
hal_i2s_master_clk_output_status_t
-
HAL I2S MCLK enumeration definition.
Values:
-
enumerator
HAL_I2S_MASTER_CLK_OUTPUT_DISABLED
-
Master clock output disabled
-
enumerator
HAL_I2S_MASTER_CLK_OUTPUT_ENABLED
-
Master clock output enabled
-
enumerator
HAL_I2S_MASTER_CLK_OUTPUT_DISABLED
-
enum
hal_i2s_ws_inversion_status_t
-
HAL I2S word select inversion enumeration definition.
Values:
-
enumerator
HAL_I2S_WS_INVERSION_DISABLED
-
Word select inversion disabled
-
enumerator
HAL_I2S_WS_INVERSION_ENABLED
-
Word select inversion enabled
-
enumerator
HAL_I2S_WS_INVERSION_DISABLED
-
enum
hal_i2s_master_keep_io_state_status_t
-
HAL I2S master keep IO state enumeration definition.
Values:
-
enumerator
HAL_I2S_MASTER_KEEP_IO_STATE_DISABLED
-
Master keep IO state disabled
-
enumerator
HAL_I2S_MASTER_KEEP_IO_STATE_ENABLED
-
Master keep IO state enabled
-
enumerator
HAL_I2S_MASTER_KEEP_IO_STATE_DISABLED
-
enum
hal_i2s_io_swap_status_t
-
HAL I2S swap IO state enumeration definition.
Values:
-
enumerator
HAL_I2S_IO_SWAP_DISABLED
-
IO swap feature disabled
-
enumerator
HAL_I2S_IO_SWAP_ENABLED
-
IO swap feature enabled
-
enumerator
HAL_I2S_IO_SWAP_DISABLED
-
enum
hal_i2s_slave_length_detection_error_status_t
-
HAL I2S slave channel length state enumeration definition.
Values:
-
enumerator
HAL_I2S_SLAVE_LEN_DETECT_ERR_DISABLED
-
Slave channel length detection error disabled
-
enumerator
HAL_I2S_SLAVE_LEN_DETECT_ERR_ENABLED
-
Slave channel length detection error enabled
-
enumerator
HAL_I2S_SLAVE_LEN_DETECT_ERR_DISABLED
-
enum
hal_i2s_io_cfg_status_t
-
HAL I2S IO configuration feature status enumeration definition.
Values:
-
enumerator
HAL_I2S_IO_CFG_UNLOCKED
-
IO configuration feature unlocked
-
enumerator
HAL_I2S_IO_CFG_LOCKED
-
IO configuration feature locked
-
enumerator
HAL_I2S_IO_CFG_UNLOCKED
-
struct
hal_i2s_master_config_t
-
#include <stm32c5xx_hal_i2s.h>
HAL I2S Master configuration structure definition.
Public Members
-
hal_i2s_mode_t
mode
-
The I2S operating mode.
-
hal_i2s_standard_t
standard
-
The I2S standard.
-
hal_i2s_data_format_t
data_format
-
The I2S data format.
-
hal_i2s_clock_polarity_t
clock_polarity
-
The serial steady state.
-
hal_i2s_bit_order_t
bit_order
-
Specifies whether data transfers start from MSB or LSB bit.
-
hal_i2s_master_audio_frequency_t
audio_frequency
-
The audio frequency selected, configurable in Master mode.
-
hal_i2s_mode_t
mode
-
struct
hal_i2s_slave_config_t
-
#include <stm32c5xx_hal_i2s.h>
HAL I2S Slave configuration structure definition.
Public Members
-
hal_i2s_mode_t
mode
-
The I2S operating mode.
-
hal_i2s_standard_t
standard
-
The I2S standard.
-
hal_i2s_data_format_t
data_format
-
The I2S data format.
-
hal_i2s_clock_polarity_t
clock_polarity
-
The serial steady state.
-
hal_i2s_bit_order_t
bit_order
-
Specifies whether data transfers start from MSB or LSB bit.
-
hal_i2s_mode_t
mode
-
struct
hal_i2s_handle_s
-
#include <stm32c5xx_hal_i2s.h>
I2S handle structure definition.
Public Members
-
hal_i2s_t
instance
-
I2S instance
-
volatile
hal_i2s_state_t
global_state
-
I2S state
-
volatile
hal_i2s_state_t
pause_state
-
I2S pause state
-
volatile
uint32_t
last_error_codes
-
I2S Error code
-
hal_os_semaphore_t
semaphore
-
I2S OS semaphore
-
const
uint16_t
*
p_tx_buff
-
Pointer to I2S Tx transfer buffer
-
uint16_t
tx_xfer_size
-
I2S Tx transfer size
-
volatile
uint16_t
tx_xfer_count
-
I2S Tx transfer counter
-
uint16_t
*
p_rx_buff
-
Pointer to I2S Rx transfer buffer
-
uint16_t
rx_xfer_size
-
I2S Rx transfer size
-
volatile
uint16_t
rx_xfer_count
-
I2S Rx transfer counter
-
void
(
*
p_rx_isr
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
Function pointer on Rx ISR
-
void
(
*
p_tx_isr
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
Function pointer on Tx ISR
-
hal_dma_handle_t
*
hdma_tx
-
I2S Tx DMA handle parameters
-
hal_dma_handle_t
*
hdma_rx
-
I2S Rx DMA handle parameters
-
const
void
*
p_user_data
-
User data pointer
-
void
(
*
p_tx_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S Tx complete callback
-
void
(
*
p_rx_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S Rx complete callback
-
void
(
*
p_tx_rx_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S TxRx complete callback
-
void
(
*
p_tx_half_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S Tx half complete callback
-
void
(
*
p_rx_half_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S Rx half complete callback
-
void
(
*
p_tx_rx_half_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S TxRx half complete callback
-
void
(
*
p_error_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S error callback
-
void
(
*
p_abort_cplt_cb
)
(
struct
hal_i2s_handle_s
*
hi2s
)
-
I2S abort callback
-
hal_i2s_t
instance
-
typedef
struct
hal_i2s_handle_s
hal_i2s_handle_t